/*******************************************************************************
 *
 * Copyright (c) 2001-2006 Primeton Technologies, Ltd.
 * All rights reserved.
 *
 * Created on Apr 11, 2008
 *******************************************************************************/
package com.primeton.eos.oss.model.newdataset;

import com.eos.data.sdo.IObjectFactory;
import com.primeton.ext.data.sdo.IllegalDataObjectTypeException;
import commonj.sdo.DataObject;
import commonj.sdo.Type;
import commonj.sdo.helper.DataFactory;
import commonj.sdo.helper.TypeHelper;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>AfcUser</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getId <em>Id</em> <desc>主键</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getCode <em>Code</em> <desc>登录账号</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getPassword <em>Password</em> <desc>登陆密码</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getIsAdmin <em>IsAdmin</em> <desc>是否为管理员(0不是,1是)</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getStatus <em>Status</em> <desc>账号状态(0禁止,1启用)</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getPasswordInit <em>PasswordInit</em> <desc>密码是否默认密码(0不是1是)</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getPasswordUpdateTime <em>PasswordUpdateTime</em> <desc>更新密码的时间</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getLockTime <em>LockTime</em> <desc>锁定时间</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getIsLock <em>IsLock</em> <desc>是否锁定(0否,1是)</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getWrongNumber <em>WrongNumber</em> <desc>密码错误次数</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getLastLoginTime <em>LastLoginTime</em> <desc>最后一次登录时间</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getDescription <em>Description</em> <desc>备注</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getExtra <em>Extra</em> <desc>扩展</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getCreateTime <em>CreateTime</em> <desc>创建时间</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getUpdateTime <em>UpdateTime</em> <desc>修改时间</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getCreateUser <em>CreateUser</em> <desc>创建人</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getUpdateUser <em>UpdateUser</em> <desc>修改人</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getTenantId <em>TenantId</em> <desc>租户ID</desc>}</li>
 *   <li>{@link com.primeton.eos.oss.model.newdataset.AfcUser#getEmployeeId <em>EmployeeId</em> <desc>员工ID</desc>}</li>
 * </ul>
 * </p>
 *
 * @extends DataObject;
 */
public interface AfcUser extends DataObject {

	public String QNAME = "com.primeton.eos.oss.model.newdataset.AfcUser";

	public Type TYPE = TypeHelper.INSTANCE.getType("com.primeton.eos.oss.model.newdataset", "AfcUser");

	public static final IObjectFactory<AfcUser> FACTORY = new IObjectFactory<AfcUser>() {
		public AfcUser create() {
            Type type = TYPE;
			if(type == null) {
				type = TypeHelper.INSTANCE.getType("com.primeton.eos.oss.model.newdataset", "AfcUser");
			}
			if(type == null) {
				throw new IllegalDataObjectTypeException("cannot find entity type: " + QNAME);	
			}
			return (AfcUser) DataFactory.INSTANCE.create(type);
		}
	};

	/**
	 * Returns the value of the '<em><b>Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Id</em>' attribute.
	 * @see #setId(java.lang.String)
	 */
	public String getId();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getId <em>Id</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Id</em>' attribute.
	 * @see #getId()
	 */
	public void setId(String id);

	/**
	 * Returns the value of the '<em><b>Code</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Code</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Code</em>' attribute.
	 * @see #setCode(java.lang.String)
	 */
	public String getCode();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getCode <em>Code</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Code</em>' attribute.
	 * @see #getCode()
	 */
	public void setCode(String code);

	/**
	 * Returns the value of the '<em><b>Password</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Password</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Password</em>' attribute.
	 * @see #setPassword(java.lang.String)
	 */
	public String getPassword();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getPassword <em>Password</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Password</em>' attribute.
	 * @see #getPassword()
	 */
	public void setPassword(String password);

	/**
	 * Returns the value of the '<em><b>IsAdmin</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>IsAdmin</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>IsAdmin</em>' attribute.
	 * @see #setIsAdmin(java.lang.String)
	 */
	public String getIsAdmin();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getIsAdmin <em>IsAdmin</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>IsAdmin</em>' attribute.
	 * @see #getIsAdmin()
	 */
	public void setIsAdmin(String isAdmin);

	/**
	 * Returns the value of the '<em><b>Status</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Status</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Status</em>' attribute.
	 * @see #setStatus(java.lang.String)
	 */
	public String getStatus();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getStatus <em>Status</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Status</em>' attribute.
	 * @see #getStatus()
	 */
	public void setStatus(String status);

	/**
	 * Returns the value of the '<em><b>PasswordInit</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>PasswordInit</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>PasswordInit</em>' attribute.
	 * @see #setPasswordInit(java.lang.String)
	 */
	public String getPasswordInit();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getPasswordInit <em>PasswordInit</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>PasswordInit</em>' attribute.
	 * @see #getPasswordInit()
	 */
	public void setPasswordInit(String passwordInit);

	/**
	 * Returns the value of the '<em><b>PasswordUpdateTime</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>PasswordUpdateTime</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>PasswordUpdateTime</em>' attribute.
	 * @see #setPasswordUpdateTime(java.util.Date)
	 */
	public Date getPasswordUpdateTime();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getPasswordUpdateTime <em>PasswordUpdateTime</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>PasswordUpdateTime</em>' attribute.
	 * @see #getPasswordUpdateTime()
	 */
	public void setPasswordUpdateTime(Date passwordUpdateTime);

	/**
	 * Returns the value of the '<em><b>LockTime</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>LockTime</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>LockTime</em>' attribute.
	 * @see #setLockTime(java.util.Date)
	 */
	public Date getLockTime();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getLockTime <em>LockTime</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>LockTime</em>' attribute.
	 * @see #getLockTime()
	 */
	public void setLockTime(Date lockTime);

	/**
	 * Returns the value of the '<em><b>IsLock</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>IsLock</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>IsLock</em>' attribute.
	 * @see #setIsLock(java.lang.String)
	 */
	public String getIsLock();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getIsLock <em>IsLock</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>IsLock</em>' attribute.
	 * @see #getIsLock()
	 */
	public void setIsLock(String isLock);

	/**
	 * Returns the value of the '<em><b>WrongNumber</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>WrongNumber</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>WrongNumber</em>' attribute.
	 * @see #setWrongNumber(java.math.BigDecimal)
	 */
	public BigDecimal getWrongNumber();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getWrongNumber <em>WrongNumber</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>WrongNumber</em>' attribute.
	 * @see #getWrongNumber()
	 */
	public void setWrongNumber(BigDecimal wrongNumber);

	/**
	 * Returns the value of the '<em><b>LastLoginTime</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>LastLoginTime</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>LastLoginTime</em>' attribute.
	 * @see #setLastLoginTime(java.util.Date)
	 */
	public Date getLastLoginTime();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getLastLoginTime <em>LastLoginTime</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>LastLoginTime</em>' attribute.
	 * @see #getLastLoginTime()
	 */
	public void setLastLoginTime(Date lastLoginTime);

	/**
	 * Returns the value of the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Description</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Description</em>' attribute.
	 * @see #setDescription(java.lang.String)
	 */
	public String getDescription();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getDescription <em>Description</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Description</em>' attribute.
	 * @see #getDescription()
	 */
	public void setDescription(String description);

	/**
	 * Returns the value of the '<em><b>Extra</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Extra</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Extra</em>' attribute.
	 * @see #setExtra(java.lang.String)
	 */
	public String getExtra();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getExtra <em>Extra</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Extra</em>' attribute.
	 * @see #getExtra()
	 */
	public void setExtra(String extra);

	/**
	 * Returns the value of the '<em><b>CreateTime</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>CreateTime</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>CreateTime</em>' attribute.
	 * @see #setCreateTime(java.util.Date)
	 */
	public Date getCreateTime();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getCreateTime <em>CreateTime</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>CreateTime</em>' attribute.
	 * @see #getCreateTime()
	 */
	public void setCreateTime(Date createTime);

	/**
	 * Returns the value of the '<em><b>UpdateTime</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>UpdateTime</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>UpdateTime</em>' attribute.
	 * @see #setUpdateTime(java.util.Date)
	 */
	public Date getUpdateTime();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getUpdateTime <em>UpdateTime</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>UpdateTime</em>' attribute.
	 * @see #getUpdateTime()
	 */
	public void setUpdateTime(Date updateTime);

	/**
	 * Returns the value of the '<em><b>CreateUser</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>CreateUser</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>CreateUser</em>' attribute.
	 * @see #setCreateUser(java.lang.String)
	 */
	public String getCreateUser();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getCreateUser <em>CreateUser</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>CreateUser</em>' attribute.
	 * @see #getCreateUser()
	 */
	public void setCreateUser(String createUser);

	/**
	 * Returns the value of the '<em><b>UpdateUser</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>UpdateUser</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>UpdateUser</em>' attribute.
	 * @see #setUpdateUser(java.lang.String)
	 */
	public String getUpdateUser();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getUpdateUser <em>UpdateUser</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>UpdateUser</em>' attribute.
	 * @see #getUpdateUser()
	 */
	public void setUpdateUser(String updateUser);

	/**
	 * Returns the value of the '<em><b>TenantId</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>TenantId</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>TenantId</em>' attribute.
	 * @see #setTenantId(java.lang.String)
	 */
	public String getTenantId();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getTenantId <em>TenantId</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>TenantId</em>' attribute.
	 * @see #getTenantId()
	 */
	public void setTenantId(String tenantId);

	/**
	 * Returns the value of the '<em><b>EmployeeId</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>EmployeeId</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>EmployeeId</em>' attribute.
	 * @see #setEmployeeId(java.lang.String)
	 */
	public String getEmployeeId();

	/**
	 * Sets the value of the '{@link com.primeton.eos.oss.model.newdataset.AfcUser#getEmployeeId <em>EmployeeId</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>EmployeeId</em>' attribute.
	 * @see #getEmployeeId()
	 */
	public void setEmployeeId(String employeeId);


}